﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
using System.ServiceModel.Channels;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.EstabelecimentoWS;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.ClienteWs;
using PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.AvaliacaoWs;


namespace PUBCLUB_2014_VISUAL_STUDIO_PRO_2010.GUI
{
    public partial class ClienteAvaliarEstabelecimento : System.Web.UI.Page
    {
        PubClub_Avaliacao_WS webServiceAvaliacao = new PubClub_Avaliacao_WS();
        PubClub_Cliente_WS webServiceCliente = new PubClub_Cliente_WS();
        PubClub_Estabelecimento_WS webServiceEstabelecimento = new PubClub_Estabelecimento_WS();       

        ObjetoCliente cliente = new ObjetoCliente();
        ObjetoEstabelecimento estabelecimento = new ObjetoEstabelecimento();

        protected void Page_Load(object sender, EventArgs e)
        {

            if (Session["Cliente"] == null)
            {
                Response.Redirect("Login.aspx?Logout=2");
            }
            else
            {
                cliente = webServiceCliente.GetCliente(Convert.ToInt32(Session["Cliente"]));
            }

            BindingList<ObjetoEstabelecimento> listaEstabelecimento = new BindingList<ObjetoEstabelecimento>(webServiceEstabelecimento.ListEstabelecimento());

            if (!Page.IsPostBack)
            {
                foreach (var item in listaEstabelecimento)
                {
                    ListItem itemDaLista = new ListItem();
                    itemDaLista.Value = item.EstabelecimentoId.ToString();
                    itemDaLista.Text = item.NomeFantasia;
                    DropDownListEstabelecimento.Items.Add(itemDaLista);
                }
            }
        }

        protected void ButtonEnviarAvaliacao_Click(object sender, EventArgs e)
        {
            int nota;
            string comentario;
            nota = Convert.ToInt32(DropDownListNivelAvaliacao.SelectedValue);
            estabelecimento = webServiceEstabelecimento.GetEstabelecimento(Convert.ToInt32(DropDownListEstabelecimento.SelectedValue.ToString()));
            comentario = textBoxComentario.Text.Trim();
            ObjetoRetornoAvaliacao retornoWebServiceAvaliacao = webServiceAvaliacao.AvaliarEstabelecimento(estabelecimento.EstabelecimentoId, cliente.ClienteId, nota, comentario);

            
            if (retornoWebServiceAvaliacao.Sucesso == true)
            {
                LabelAviso.Text = "Comentário enviado com sucesso!";
                LabelAviso.ForeColor = System.Drawing.Color.Green;
                LabelAviso.Visible = true;
            }
            else
            {
                LabelAviso.Text = retornoWebServiceAvaliacao.Menssagem;
                LabelAviso.ForeColor = System.Drawing.Color.Red;
                LabelAviso.Visible = true;

            }           

        }

        protected void ButtonCancelar_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/GUI/HomeCliente.aspx");
        }
    }
}